package com.zgs.common.to.es;

import lombok.Data;

import java.util.List;

/**
 * ES 数据
 * {
 *   "mappings":{
 *     "properties":{
 *       "skuId":{
 *         "type":long
 *       },
 *       "spuId":{
 *         "type":"keyword"
 *       },
 *       "skuTitle":{
 *         "type":"text",
 *         "analyzer":"ik_smart"
 *       },
 *       "skuPrice":{
 *         "type":"keyword"
 *       },
 *       "skuImg":{
 *         "type":"keyword",
 *         "index":false,
 *         "doc_values":false
 *       },
 *       "saleCount":{
 *         "type":long
 *       },
 *       "hasStock":{
 *         "type":"boolean"
 *       },
 *       "hotScore":{
 *         "type":"long"
 *       },
 *       "brandId":{
 *         "type":"long"
 *       },
 *       "catalogId":{
 *         "type":"long"
 *       },
 *       "brandName":{
 *         "type":"keyword",
 *         "index":false,
 *         "doc_values":false
 *       },
 *       "brandImg":{
 *         "type":"keyword",
 *         "index":false,
 *         "doc_values":false
 *       },
 *       "catalogName":{
 *         "type":"keyword",
 *         "index":false,
 *         "doc_values":false
 *       },
 *       "attrs":{
 *         "type":"nested",
 *         "properties":{
 *           "attrId":{
 *             "type":"long"
 *           },
 *           "attrName":{
 *             "type":"keyword",
 *             "index":false,
 *             "doc_values":false
 *           },
 *           "attrValue":{
 *             "type":"keyword"
 *           }
 *         }
 *       }
 *     }
 *   }
 * }
 */
@Data
public class SkuEsModel {
    private Long spuId;
    private Long skuId;
    /**
     * SKU标题
     */
    private String skuTitle;
    /**
     * sku价格
     */
    private String skuPrice;
    /**
     * sku图片
     */
    private String skuImg;
    /**
     * 销量
     */
    private Long saleCount;
    /**
     * 是否有库存
     */
    private Boolean hasStock;
    /**
     * 热度分数
     */
    private Long hotScore;
    /**
     * 品牌id
     */
    private Long brandId;
    /**
     * 类别id
     */
    private Long catalogId;
    /**
     * 品牌名称
     */
    private String brandName;
    /**
     * 品牌图片
     */
    private String brandImg;
    /**
     * 类别名称
     */
    private String catalogName;

    private List<Attrs> attrs;
    @Data
    public static class Attrs{
        /**
         * 属性id
         */
        private Long attrId;
        /**
         * 属性名称
         */
        private String attrName;
        /**
         * 属性值
         */
        private String attrValue;
    }
}
